The present invention pertains generally to the display of video images and more particularly to a method for generating a number of moving objects on a television-type video display screen in the context of a video amusement game.
Typically, such display screens utilize an image-forming beam that traverses the screen along a plurality of sequentially scanned horizontal lines in response to horizontal and vertical synchronizing signals, including horizontal and vertical retrace intervals. Manual control inputs are provided for a plurality of game players, the inputs being monitored by a microprocessor unit to determine the motion of the objects. The basic criterion for the display of multiple objects is that the control circuitry or logic be capable of effecting variations in the intensity of the electronic beam as a television monitor is scanned. The scanning rate for standard monitors is too fast for direct video output by low-cost computers, thus, a buffer is required. Motion control logic is one known type of buffer. For example, it is known to use separate motion counting or comparator circuits for each moving object to be displayed. With multiple objects, multiple counters or comparators are required which typically results in relatively complex and expensive circuitry.
As used herein, the term moving object refers to objects that are displayed on a video screen and movable on the screen in response to player-controlled input devices. Playfield objects, on the other hand, refer to display notations that are more or less stationary and are generated by a playfield generator as, for example, that described in U.S. Pat. No. 4,116,444, issued Sept. 26, 1978, in the names of Steven T. Mayer and Ronald E. Milner and assigned to the present assignee. Thus, for example, video game apparatus fashioned as a hockey game would generate such playfield objects as the goals, boundary lines and zone markers; the moving objects would represent the hockey players and puck.
U.S. Pat. No. 4,116,444 discloses the following method of generating a number of moving objects on a video display screen. Data specifying the locations at which moving objects are to be displayed on the screen is stored in a RAM. During a horizontal retrace interval, the stored data is scanned to determine any locations to be displayed for the upcoming horizontal display line to be actively scanned. Information is temporarily stored in locations in another random access memory (RAM) representing the next horizontal line in accordance with the stored location. An output display signal is delivered when the position of the beam, during active scan time, corresponds to the stored location. The RAM data is then used to activate a graphics generator-picture memory combination to generate the video data used to produce the video image on the display screen.
While the above known techniques are used quite satisfactorily in particular applications and under certain conditions, such techniques are not without certain disadvantages when sought to be used under conditions and requirements. For example, such techniques typically generate moving objects utilizing memory and logic circuits that are separate and apart from that used to generate playfield objects (e.g., those objects which are relatively stationary and usually non-responsive to player input). As a result, a large amount of duplication in both memory and logic circuitry is experienced, adding to the cost and complexity of the video amusement game apparatus. Moreover, several such techniques often require several levels of memory for moving symbol generation which, in turn, can place severe time limitations and timing constraints on system operation.
Further, when two or more of the moving objects are to overlap on the screen (e.g., during a "collision" between two vehicle objects), there is a tendency by certain of the above-described techniques to "mask" the video data, and therefore display of, one of the objects. More particularly, actual picture data in parallel form for a moving object is typically loaded into a converter (typically a parallel-to-serial shift register) which converts the data to video information. However, if the picture data for a first moving object is in the process of being converted when picture data for a second (overlapping) object is loaded into the converter, the remainder of the first object picture data is destroyed. Thus, a portion of the first movable object is "masked" by the second movable object.